In [4]:
from setup import *
import sys
if DATA_PATH not in sys.path: sys.path.append(DATA_PATH)
from constants import *

%matplotlib inline
display(HTML("<style>.container { width:100% !important; }</style>"))
pd.set_option('display.max_rows', 4)
pd.set_option('display.max_columns', 200)



In [ ]:

Let's look at some tweets


In [2]:
print('Loading previously "cleaned" tweets (could take a minute or so)...')
df = pd.read_csv(os.path.join(DATA_PATH, 'deduped_tweets.csv.gz'), index_col='id', compression='gzip',
                 quotechar='"', quoting=pd.io.common.csv.QUOTE_NONNUMERIC, low_memory=False)
print('Loaded {} tweets.'.format(len(df)))
df


Loading previously "cleaned" tweets (could take a minute or so)...
Loaded 183070 tweets.
Out[2]:
favorite_count id_str in_reply_to_status_id in_reply_to_status_id_str in_reply_to_user_id in_reply_to_user_id_str lat lon quoted_status_favorite_count quoted_status_retweet_count quoted_status_user_favourites_count quoted_status_user_followers_count quoted_status_user_friends_count quoted_status_user_id quoted_status_user_id_str quoted_status_user_listed_count quoted_status_user_statuses_count quoted_status_user_utc_offset retweet_count retweeted_status_favorite_count retweeted_status_id retweeted_status_id_str retweeted_status_in_reply_to_status_id retweeted_status_in_reply_to_status_id_str retweeted_status_in_reply_to_user_id retweeted_status_in_reply_to_user_id_str retweeted_status_quoted_status_favorite_count retweeted_status_quoted_status_retweet_count retweeted_status_quoted_status_user_favourites_count retweeted_status_quoted_status_user_followers_count retweeted_status_quoted_status_user_friends_count retweeted_status_quoted_status_user_id retweeted_status_quoted_status_user_id_str retweeted_status_quoted_status_user_listed_count retweeted_status_quoted_status_user_statuses_count retweeted_status_quoted_status_user_utc_offset retweeted_status_retweet_count retweeted_status_user_favourites_count retweeted_status_user_followers_count retweeted_status_user_friends_count retweeted_status_user_id retweeted_status_user_id_str retweeted_status_user_listed_count retweeted_status_user_statuses_count retweeted_status_user_utc_offset user_favourites_count user_followers_count user_friends_count user_id user_id_str user_listed_count user_statuses_count user_utc_offset quoted_status_id quoted_status_id_str retweeted_status_quoted_status_id retweeted_status_quoted_status_id_str text favorite_count.1 geo_coordinates
id
724276510626979840 0 724276510626979840 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0 1 12 2957565833 2957565833 3 182 NaN NaN NaN NaN NaN #python never stop learning what you enjoy doi... 0 NaN
724276498249572352 0 724276498249572352 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 56 454 197 86312900 86312900 5 117794 25200.0 NaN NaN NaN NaN Watching Boa vs. Python — https://t.co/Pivpk02s2A 0 NaN
724276388325412866 1 724276388325412866 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 12475 3110 4998 1391270923 1391270923 60 23206 -14400.0 NaN NaN NaN NaN Monty Python - The silly walk https://t.co/C0J... 1 NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
724275609858392066 0 724275609858392066 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 6 10.0 7.242686e+17 7.242686e+17 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 6.0 23339.0 5678.0 39.0 745911914.0 745911914.0 682.0 11640.0 -10800.0 161 867 2 3428977365 3428977365 1514 10422 NaN NaN NaN NaN NaN RT @RealPython: List of Python API Wrappers &g... 0 NaN
724275578879111169 0 724275578879111169 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 105 819 275 385181009 385181009 1 59510 25200.0 NaN NaN NaN NaN Watching Boa vs. Python — https://t.co/5THbrirfQO 0 NaN
724275568871673857 0 724275568871673857 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 0 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 1 61 15 302987528 302987528 4 124 28800.0 NaN NaN NaN NaN Чертова дюжина вакансий в IT и Digital / / 1.... 0 NaN

183070 rows × 60 columns


In [3]:
text = df.text.iloc[:10]
for tweet in text:
    print()
    print(tweet)
    # print(repr(tweet))


#python never stop learning what you enjoy doing. https://t.co/IH5ZSKnU8K

Watching Boa vs. Python — https://t.co/Pivpk02s2A

Monty Python - The silly walk https://t.co/C0Ja8UHL4t via @YouTube

Senior Software Engineer Full Stack Python Django And Php Jobs #jobs #jobsearch https://t.co/EuO3Et4JIT

Architect Django Solr Platform Engineer With Python 230k Jobs in Manhattan, NY #Manhattan #NY #jobs #jobsearch https://t.co/ge0RzBDoSP

peaceful rain? Python - inevitability

#How to make while loops in Python? [on hold]
#Tech #Queations
https://t.co/QKwHsSbmGC

#How to make while loops in Python? [on hold]
#Tech #Internet #Programming
https://t.co/CcSYhYicJ1

#How to make while loops in Python? [on hold]
#HowTo #Question #Tech
https://t.co/P09bSI7dGD

RT @PythonWeekly: serialplot - A python 2.7 application that plots serial data in real time. https://t.co/LqHfjxhoLd #python

So Even after subtracting "-Monty" in our search query, there are still a lot more meanings for Python than we intended
This is one of the key challenges of natural language procesing, "ambiguity"
There are a lot of names for dimension reduction techniques that attempt to determing meaning (semantics) from bag of words statistics (words used near each other)

  • Word2Vec
  • LSI: Latent Semantic Indexing
  • PCA: Principal Component Analysis
  • SVD: Singular Value Decomposition

  • LDA: Linear Discriminant Analysis

  • LDA: Latent Dirichlet Allocation

In [ ]:


In [ ]: